package co.gov.medellin.sdep.sisdep.gestion.service;

import java.util.List;

import co.gov.medellin.sdep.sisdep.gestion.exception.VehiculoException;
import co.gov.medellin.sdep.sisdep.model.Vehiculo;

/**
 * @author acespedes
 *
 */
public interface IVehiculoService {

	/**
	 * 
	 * @param newVehiculo
	 * @throws VehiculoException
	 */
	void insert(Vehiculo newVehiculo) throws VehiculoException;

	/**
	 * 
	 * @param newVehiculo
	 * @throws VehiculoException
	 */
	void update(Vehiculo newVehiculo) throws VehiculoException;

	/**
	 * 
	 * @param newVehiculo
	 * @throws VehiculoException
	 */
	void delete(Vehiculo newVehiculo) throws VehiculoException;

	/**
	 * 
	 * @param start
	 * @param limit
	 * @param criteria
	 * @return
	 * @throws VehiculoException
	 */
	List load(int start,int limit,Vehiculo criteria) throws VehiculoException;

	/**
	 * 
	 * @param id
	 * @return
	 * @throws VehiculoException
	 */
	Vehiculo get(long id) throws VehiculoException;
	
	/**
	 * 
	 * @param placa
	 * @return
	 */
	Vehiculo findByRelated(String placa) throws VehiculoException;

}
